 // var url = "http://127.0.0.1:888/postek/print";
 
 function print_RFID(tool_name='',gqjID='',bar_code='') {
    var mm=12,
        y=5,
        fontHeight=3;
    PTK_OpenUSBPort(PTKprinterUsbPort);
    PTK_ClearBuffer();     //*清空缓存
    setPTKpage();
    setPTKRFID(gqjID);
    let data={
        'gqjID':gqjID,
        'tool_name':tool_name,
        'bar_code':bar_code,
    };
    setPTKpageContent(data);

    
    PTK_PrintLabelFeedback("打印返回：",1);

    PTK_CloseUSBPort();
    PTK_Read();//请求数据
}

function setPTKpage(){
    let mm = getPTKmm();
    PTK_SetDarkness(20);   //设置打印黑度 取值范围 0-20
    PTK_SetPrintSpeed(4);  //设置打印速度
    PTK_SetDirection('B'); //设置打印方向
    PTK_SetLabelHeight(21*mm,4*mm,0,false); //*设置标签高度、间隙及偏移
    PTK_SetLabelWidth(73*mm);//*设置标签宽度，一定要准确，否则会导致打印内容位置不准确
}

function getPTKmm() {
    return 12;
}

function setPTKpageContent(data={}) {
    var mm=getPTKmm(),
        y=3,
        fontHeight=3;
    // PTK_DrawBar2D_QR(x,y,w,v,o,r,m,g,s,data);
    PTK_DrawBar2D_QR(10*mm,y*mm,0,1,0,7,0,3,8,data.gqjID); //二维码
    PTK_DrawText_TrueType(30*mm,y*mm,fontHeight*mm,0,"Arial",1,900,0,0,0,"工器具："+data.tool_name);   //打印文字
    y += fontHeight;
    PTK_DrawText_TrueType(30*mm,y*mm,fontHeight*mm,0,"Arial",1,900,0,0,0,"二维码："+data.gqjID);   //打印文字
    y += fontHeight;
    PTK_DrawBarcode(30*mm,y*mm,0,"1",2,6,(fontHeight*2)*mm,"N",data.bar_code);        //打印一维码
    y += (fontHeight*2);
    PTK_DrawText_TrueType(30*mm,y*mm,30,0,"Arial",1,900,0,0,0,data.bar_code);   //打印文字
}

function setPTKRFID(gqjID){
    let  gqjIDlen=Math.ceil((gqjID.length)/2);
    PTK_SetRFID(0,0,0,0,0); //UHF RFID打印设置
    PTK_RWRFIDLabel(1,0,2,gqjIDlen,1,gqjID);//写RFID数据 具体参数请查看文档
    // {"PTK_SetRFLabelPWAndLockRFLabel" : "OperationMode,OperationnArea,password"}
    // 锁定RFID区域，锁定后要要想重新写得先解锁。完全锁定后不能重写
    // OperationMode:操作方式：0 - 解锁，1 - 锁定，2 - 完全解锁，3 - 完全锁定，4 - 密码写入
    // OperationnArea:操作区域：0 - 销毁密码区，1- 访问密码区，2 - EPC，3 - TID，4 - USER
    PTK_SetRFLabelPWAndLockRFLabel(1,2,"84263495");
}

function batch_print_RFID() {
    var doms = $("tbody tr > td:first-child input:checkbox:checked"),l = doms.length;
    if (l == 0) {
        alert('请先选择一个');
        return;
    }

    PTK_OpenUSBPort(PTKprinterUsbPort);
    PTK_ClearBuffer();     //*清空缓存
    setPTKpage();

    doms.each(function (index) {
        let data = {
            'gqjID' : $(this).closest("tr").find("td.gqj_ID").text(),
            'tool_name' : $(this).closest("tr").find("td.tool_name").text(),
            'bar_code' : $(this).closest("tr").find("td.bar_code").text(),
        }
        if(data['gqjID'].length > 0){
            setPTKpageContent(data);
            setPTKRFID(data.gqjID);
            PTK_PrintLabel(1,1); //打印，必须要执行这一行，否则不会打印
        }
    });

    PTK_CloseUSBPort();
    PTK_Read();//请求数据
}
function getPTKPrinterList() {
    var data = {};
    data.reqParam = "printerList";
    $.ajax({
        type: "POST",
        url: RFIDurl,
        data: data,
        dataType: "json",
        //async:false,
        timeout: 5000,
        success: function(result) {
            console.log(RFIDurl);
            console.log(result);
            if (result.retval == "0") {
                PTKprinterUsbPort = result.printerList[0].printerUsbPort;
            } else {
                layer.msg(" 提示：\r\n" + "未发现通过USB连接到PC的POSTEK打印机！\r\n"
                        +"若您想通过USB打印，请检查USB连接及打印机是否开启后刷新页面。");
            }
        },
        error: function(result) {
            layer.msg("请求失败，请检查服务是否开启");
        }
    });
}

function PTK_Read(params='',callbackFunc=''){
    var data = {};
    var msg_st="";
    // async:false,
    data.reqParam = "1";
    data.printparams = params ? params : JSON.stringify( printparamsJsonArray);
    jQuery.support.cors = true;  //适用于IE浏览器
    clean(); //此函数必须使用

    $.ajax({
        type: "POST",
        url: RFIDurl,
        data:data,
        dataType:"json",
        // async:false,
        timeout:1000,
        success:function(result){
            console.log('PTK打印机result');
            console.log(result);
            if (callbackFunc) {
                return result;
            }
            if (result.retval == "0") {
                msg_st=result.ReceiveData.replace(DataName,"");
            } else {
                layer.msg("RFID获取信息失败");
            }
          },
         error:function(request, status, err) { 
            layer.msg("请求失败，请检查RFID服务是否开启");
       }
    });
}

//博思得打印机探测校准
function PTK_RFIDjz(){
    PTK_OpenUSBPort(PTKprinterUsbPort);
    PTK_RFIDCalibrate();
    PTK_CloseUSBPort();
    PTK_Read();
}   